<?php
//测试控制器类
class LoginController extends Controller{
    //动作方法
   //登陆首页
	public function index(){
		//判断如果已经登陆，就不需要在登陆
		if(isset($_SESSION['aid']) && isset($_SESSION['adminname'])){

			//go函数跳转
			go(U('Index/index'));
		}
		//处理post提交
		if (IS_POST) {
			//要用到数据库数据，所以要实例化相应数据库表model模型，
			//在此就是UserModel.clss.php,模型文件名对应相应的数据库表
			//一个模型对应一个表
			//实例化User模型对象
			$model=K('User');
			//执行验证，如果 $model->validate_login()接收到的为假，则提示usermodel判断的错误
			if(!$data = $model->validate_login()) $this->error($model->error);

			//登陆成功，存用户session
			session('aid',$data['uid']);
			session('adminname',$data['username']);
           
			//登陆成功，跳转到管理界面首页
			$this->success('登陆成功！',U('Index/index'));
	
		}
		$this->display();
	}

    /**
     * 显示验证码
     */
    public function code(){

    	$code=new Code();
    	$code->show();
    }

    //验证码异步验证
    public function ajax_check_code(){
        //判断否合法请求
        if(!IS_AJAX) $this->error('非法请求！',U('Login/index'));
        //不区分大小写
        $code=strtoupper($_POST['code']);

        //判断是否he验证码类中保存的值相等
        if ($code==$_SESSION['code']) {
            $status['status']=1;
            $status['message']='验证成功了';
        }else{
            $status['status']=0;
            $status['message']='验证失败';
        }

        //echo json_encode($status);die;
        $this->ajax($status);

    }
    
     //登陆用户名异步验证
    public function ajax_check_name(){
        //判断否合法请求
        if(!IS_AJAX) $this->error('非法请求！',U('Login/index'));
        //不区分大小写
        $username=Q('post.username');
        
        //判断用户名是否存在
        $data=K('User')->get_one_data(array('username'=>$username));
       
        if ($data) {
            $status['status']=1;
            $status['message']='用户名输入正确';
        }else{
            $status['status']=0;
            $status['message']='用户名不存在';
        }
        //echo json_encode($status);die;
        $this->ajax($status);

    }
    /**
     * 退出
     */
    public function out(){
    	session(null);
    	$this->success('退出成功',U('Login/index'));
    }
}
